home *** CD-ROM | disk | FTP | other *** search
- 8 PRINT"[147]"
- 10 POKE 53280,12:POKE53281,1:PRINT""
- 20 PRINT"[147]"
- 120 GOSUB 10100
- 130 GOSUB 10500
- 1720 PRINT"[147]"
- 1721 PRINT" HERE IS HOW HI-RES GRAPHICS WORKS:"
- 1722 PRINT:PRINT:PRINT
- 1725 PRINT"HI-RES GRAPHICS TAKES 8000 BYTES OF"
- 1730 PRINT"MEMORY FOR ITS SCREEN."
- 1735 PRINT"FIRST YOU MUST SET THE LOCATION OF THE"
- 1740 PRINT"MEMORY (24576) TO BE USED FOR THE SCREEN";
- 1742 PRINT"AND THEN TURN THE SCREEN ON."
- 1745 PRINT:PRINT:PRINT"10804 POKE 56578,PEEK(56578)OR 3"
- 1746 PRINT"10806 POKE 56576,(PEEK(56576)AND 252)OR2";
- 1747 PRINT"10810 POKE 53272,PEEK(53272)OR 8"
- 1755 PRINT"10820 POKE 53265,PEEK(53265) OR 32"
- 1760 GOSUB 10400
- 1770 PRINT"[147]":PRINT:PRINT:PRINT:PRINT:PRINT"NOW YOU MUST CLEAR ALL THE BITS IN YOUR"
- 1780 PRINT"HI-RES SCREEN MEMORY AND SET THE COLORS"
- 1781 PRINT"OF THE BACKGROUND AND SCREEN BITS."
- 1782 PRINT:PRINT
- 1785 PRINT"10610 CB=49216"
- 1786 PRINT"10620 CC=49236"
- 1787 PRINT"10630 POKE 251,0:POKE 252,96"
- 1790 PRINT"10640 SYS CB"
- 1792 PRINT"10650 POKE 251,0:POKE 252,68"
- 1794 PRINT"10660 SYS CC"
- 1800 PRINT:PRINT:PRINT"THIS CALLS AN ASSEMBLY LANGUAGE PROGRAM"
- 1802 PRINT"THAT CLEARS THE SCREEN."
- 1803 GOSUB 10400
- 1804 PRINT"[147]":PRINT:PRINT:PRINT:PRINT:PRINT"HERE ARE THE HI-RES SCREEN COORDINATES:"
- 1805 PRINT:PRINT"0[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]X[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]319"
- 1806 FOR I=1 TO 5:PRINT"[221]":NEXT
- 1807 PRINT"Y"
- 1808 FOR I=1 TO 5:PRINT"[221]":NEXT
- 1809 PRINT" 199"
- 1810 GOSUB 10400
- 1820 PRINT"[147]":PRINT:PRINT:PRINT:PRINT:PRINT"NEXT YOU GET YOUR X AND Y FROM THE PAD"
- 1822 PRINT"AND CONVERT THEM TO THE SCREEN RANGE:"
- 1824 PRINT:PRINT:PRINT"10710 SYSC"
- 1826 PRINT"10720 X=INT((PEEK(C+257))*1.25)"
- 1828 PRINT"10730 Y=INT((PEEK(C+259))*.784)"
- 1829 GOSUB 10400:PRINT"[147]"
- 1830 PRINT:PRINT:PRINT:PRINT:PRINT"NOW YOU CAN USE THE FOLLOWING FORMULAS"
- 1832 PRINT"TO CONVERT THE X AND Y FROM THE PAD TO"
- 1834 PRINT"THE CORRESPONDING LOCATIONS WHICH ARE"
- 1835 PRINT"THEN POKED ON THE SCREEN."
- 1837 PRINT:PRINT:PRINT"10705 BASE=24576"
- 1840 PRINT"10740 CH=INT(X/8):RO=INT(Y/8)"
- 1850 PRINT"10760 LN=Y AND 7:BI=7-(X AND 7)"
- 1860 PRINT"10780 BY=BASE+RO*320+8*CH+LN"
- 1865 PRINT"10790 POKE BY,PEEK(BY)OR(2^BI)"
- 1875 GOSUB 10400
- 1880 PRINT"[147]":PRINT:PRINT:PRINT:PRINT:PRINT"WHEN YOU HAVE FINISHED USING THE HI-RES"
- 1882 PRINT"SCREEN YOU MUST TURN IT OFF AND RESTORE"
- 1884 PRINT"THE SCREEN MEMORY TO THE PROPER"
- 1886 PRINT"LOCATIONS:"
- 1888 PRINT:PRINT:PRINT"10860 POKE 53265,PEEK(53265) AND 223"
- 1890 PRINT"10870 POKE 53272,PEEK(53272)AND 247"
- 1891 PRINT"10874 POKE 56578,PEEK(56578)OR 3"
- 1892 PRINT"10876 POKE 56576,(PEEK(56576)AND 252)OR3";
- 1894 GOSUB 10400
- 1895 PRINT"[147]":VTAB=11:GOSUB 10000:PRINTTAB(11);"ONE MOMENT PLEASE..."
- 1896 LOAD"KB PART 3",8
- 1900 GOSUB 10800
- 1910 GOSUB 10600
- 1920 GOSUB 10700
- 2012 IF PEEK(C+262)<>255 THEN 2300
- 2020 POKE BY,DA
- 2100 DX=X-PX:DY=Y-PY
- 2110 TX=X:TY=Y
- 2120 AX=ABS(DX):AY=ABS(DY)
- 2130 IF AY>AX THEN 2200
- 2140 FOR I=1 TO AX
- 2150 X=PX+SGN(DX)*I
- 2160 Y=INT(PY+SGN(DY)*I*(AY/AX))
- 2170 GOSUB 10720
- 2180 NEXT I
- 2190 GOTO 2300
- 2200 FOR I=1 TO AY
- 2210 X=INT(PX+SGN(DX)*I*(AX/AY))
- 2220 Y=PY+SGN(DY)*I
- 2230 GOSUB 10720
- 2240 NEXT I
- 2300 PX=TX:PY=TY
- 2310 (null) TO 1920
- 4000 (null) TO 4000
- 7000 STOP
- 10000 REM***********VTAB****************
- 10010 PRINT""
- 10020 VA=VT/2
- 10030 VD=INT(VT/2)
- 10040 IF VA-VD>.4 THEN PRINT
- 10050 FOR CR=1 TO VD
- 10060 PRINT""
- 10070 NEXT CR
- 10080 RETURN
- 10100 REM*********PADDLE SET UP*********
- 10110 C=12*4096
- 10120 FOR I=0 TO 63
- 10121 READA
- 10122 POKE C+I,A
- 10124 NEXTI
- 10130 DATA 162,1,120,173,2,220,141,0,193,169,192,141,2,220,169
- 10140 DATA 128,141,0,220,160,128,234,136,16,252,173,25,212,157
- 10150 DATA 1,193,173,26,212,157,3,193,173,0,220,9,128,141,5,193
- 10160 DATA 169,64,202,16,222,173,0,193,141,2,220,173,1,220,141
- 10170 DATA 6,193,88,96
- 10180 RETURN
- 10200 REM***********DEBOUNCE******************
- 10210 SYSC
- 10220 S2=PEEK(C+262)
- 10230 IF S2<>255 THEN 10250
- 10240 (null) TO 10210
- 10250 BV=S2
- 10260 SYSC
- 10270 S2=PEEK(C+262)
- 10280 IF S2=255 THEN RETURN
- 10290 (null) TO 10260
- 10300 REM**************PADDLE READ*******
- 10310 SYSC
- 10320 XP=PEEK(C+257):YP=PEEK(C+259)
- 10330 S2=PEEK(C+262)
- 10340 RETURN
- 10400 REM*******PRESS EITHER BUTTON********
- 10410 VTAB=21:GOSUB 10000
- 10420 EB$="PRESS EITHER BUTTON TO CONTINUE..."
- 10421 PRINTEB$
- 10430 GOSUB 10200
- 10440 RETURN
- 10500 REM***********CLEAR MEMORY*********
- 10510 CB=49216
- 10520 FOR I=0 TO 39
- 10530 READ A
- 10540 POKE CB+I,A
- 10550 NEXT I
- 10560 DATA 24,169,0,160,0,162,128,145,251,200
- 10570 DATA 208,251,230,252,24,228,252,208,244,96
- 10580 DATA24,169,16,160,0,162,72,145,251,200
- 10590 DATA 208,251,230,252,24,228,252,208,244,96
- 10595 RETURN
- 10600 REM*********CLEAR HI-RES SCREEN***********
- 10610 CB=49216
- 10620 CC=49236
- 10630 POKE 251,0:POKE 252,96
- 10640 SYSCB
- 10650 POKE 251,0:POKE 252,68
- 10660 SYSCC
- 10670 RETURN
- 10700 REM**********PAD TO HI-RES COORS.**************
- 10705 BASE=2*4096+16384
- 10710 SYSC
- 10720 X=INT((PEEK(C+257))*1.25)
- 10730 Y=INT((PEEK(C+259))*.784)
- 10740 CH=INT(X/8)
- 10750 RO=INT(Y/8)
- 10760 LN=YAND7
- 10770 BI=7-(XAND7)
- 10780 BY=BASE +RO*320+8*CH+LN
- 10790 DA=PEEK(BY)OR(2^BI)
- 10795 RETURN
- 10800 REM******OPEN HI-RES*************************
- 10804 POKE 56578,PEEK(56578)OR3
- 10806 POKE 56576,(PEEK(56576)AND 252)OR2
- 10810 POKE 53272,PEEK(53272)OR8
- 10820 POKE 53265,PEEK(53265)OR32
- 10830 RETURN
- 10850 REM************CLOSE HI-RES*************
- 10860 POKE 53265,PEEK(53265)AND223
- 10870 POKE 53272,PEEK(53272)AND247
- 10874 POKE 56578,PEEK(56578)OR3
- 10876 POKE 56576,(PEEK(56576)AND252)OR3
- 10880 RETURN
-